
/* main.css */

/* 全局样式 */
.root {
    -fx-font-family: "Segoe UI", Arial, sans-serif;
    -fx-font-size: 13px;
    -fx-background-color: #f5f7fa;
}

/* 按钮样式 */
.primary-button {
    -fx-background-color: #4CAF50;
    -fx-text-fill: white;
    -fx-font-weight: bold;
    -fx-padding: 8 15;
    -fx-cursor: hand;
}

.primary-button:hover {
    -fx-background-color: #45a049;
}

.secondary-button {
    -fx-background-color: #2196F3;
    -fx-text-fill: white;
    -fx-font-weight: bold;
    -fx-padding: 8 15;
    -fx-cursor: hand;
}

.secondary-button:hover {
    -fx-background-color: #0b7dda;
}

.accent-button {
    -fx-background-color: #FF9800;
    -fx-text-fill: white;
    -fx-font-weight: bold;
    -fx-padding: 8 15;
    -fx-cursor: hand;
}

.accent-button:hover {
    -fx-background-color: #e68900;
}

.danger-button {
    -fx-background-color: #F44336;
    -fx-text-fill: white;
    -fx-font-weight: bold;
    -fx-padding: 8 15;
    -fx-cursor: hand;
}

.danger-button:hover {
    -fx-background-color: #d32f2f;
}

/* 折叠面板样式 */
.titled-pane {
    -fx-border-color: #ddd;
    -fx-border-radius: 6px;
    -fx-background-radius: 6px;
    -fx-effect: dropshadow(gaussian, rgba(0, 0, 0, 0.1), 5, 0, 0, 2);
}

.titled-pane > .title {
    -fx-background-color: #fff;
    -fx-font-weight: bold;
    -fx-padding: 10px 15px;
    -fx-border-width: 0 0 1 0;
    -fx-border-color: #eee;
}

.titled-pane > .content {
    -fx-background-color: #fff;
    -fx-padding: 10px;
}

/* 标签样式 */
.info-label {
    -fx-text-fill: #666;
}

.section-label {
    -fx-font-weight: bold;
    -fx-text-fill: #333;
    -fx-padding: 5px 0;
}

/* 状态栏样式 */
.status-bar {
    -fx-background-color: #fff;
    -fx-padding: 5px 10px;
    -fx-border-color: #eee;
    -fx-border-width: 1px 0 0 0;
}

/* 表格样式 */
.table-view {
    -fx-background-color: #fff;
    -fx-border-radius: 4px;
    -fx-effect: dropshadow(gaussian, rgba(0, 0, 0, 0.1), 3, 0, 0, 1);
    -fx-padding: 5px;
}

.table-view .column-header {
    -fx-background-color: #f0f4f8;
    -fx-padding: 15px 10px;
    -fx-font-weight: bold;
    -fx-font-size: 14px;
    -fx-border-color: #ddd;
    -fx-border-width: 0 0 2px 0;
}

/* 表格列排序指示器样式 */
.table-view .column-header .arrow {
    -fx-background-color: #4a6fa5;
    -fx-shape: "M 0 0 L 4 4 L 0 8 Z";
    -fx-padding: 0 0 0 5;
    -fx-background-insets: 0 0 0 5;
}

.table-view .column-header .sort-descending .arrow {
    -fx-shape: "M 0 0 L 4 4 L 0 8 Z";
    -fx-rotate: 180;
}

.table-view .column-header .sort-ascending .arrow {
    -fx-shape: "M 0 0 L 4 4 L 0 8 Z";
}

.table-view .table-cell {
    -fx-padding: 12px 10px;
    -fx-border-color: #eee;
    -fx-border-width: 0 0 1px 0;
    -fx-font-size: 14px;
    -fx-text-fill: #333;
    -fx-alignment: CENTER_LEFT;
}

/* 单元格内容过长时显示省略号 */
.table-view .table-cell .text {
    -fx-overflow: hidden;
    -fx-text-fill: inherit;
    -fx-wrap-text: true;
}

.table-view .table-row-cell:selected {
    -fx-background-color: #d1e7fd;
}

.table-row-cell {
    -fx-background-color: #ffffff;
    -fx-cell-size: 40px;
    -fx-table-cell-border-color: transparent;
}

.table-row-cell:hover {
    -fx-background-color: #f5f9ff;
}

/* 确保表格列宽合理 */
.table-view .column-header .label {
    -fx-padding: 0 5px;
}

/* 列表视图样式 */
.list-view {
    -fx-background-color: #fff;
    -fx-border-radius: 4px;
    -fx-effect: dropshadow(gaussian, rgba(0, 0, 0, 0.1), 3, 0, 0, 1);
}

.list-view .list-cell {
    -fx-padding: 8px 10px;
    -fx-border-color: #eee;
    -fx-border-width: 0 0 1 0;
}

.list-view .list-cell:selected {
    -fx-background-color: #e3f2fd;
}

/* 文本框样式 */
.text-field {
    -fx-background-color: #fff;
    -fx-border-radius: 4px;
    -fx-border-color: #ddd;
    -fx-padding: 6px 10px;
    -fx-effect: dropshadow(gaussian, rgba(0, 0, 0, 0.05), 2, 0, 0, 1);
}

.text-field:focused {
    -fx-border-color: #2196F3;
}

/* 复选框样式 */
.check-box {
    -fx-padding: 5px 0;
}

/* 搜索结果高亮 */
.highlight {
    -fx-background-color: #ffeb3b;
    -fx-border-radius: 3px;
}

/* 搜索进度指示器 */
.progress-indicator {
    -fx-progress-color: #4CAF50;
}

/* 进度条样式 */
.progress-bar {
    -fx-accent: #4CAF50;
    -fx-padding: 2px;
}

.progress-bar .track {
    -fx-background-color: #e0e0e0;
    -fx-background-radius: 2px;
}

.progress-bar .bar {
    -fx-background-color: #4CAF50;
    -fx-background-radius: 2px;
}
